BetaLabsClientQtQuick v1.0
==========================

This Qt Quick application allows users to browse the applications in Nokia
Beta Labs (http://betalabs.nokia.com/). The main purpose of the application is
to demonstrate how to communicate with a Web server from QML using AJAX. The
application also demonstrates how to create the user interface using multiple
QML views, and how to use Qt Components. The application is compatible with
Symbian^3 devices.

For more information about the project, see
https://projects.forum.nokia.com/betalabsclientqtquick.


FILES
-------------------------------------------------------------------------------

bin/

- Contains the compiled binaries.
             
src/main.cpp

- The main file of the application. Creates the main QML file and displays it.

qml/BetaLabsClientQtQuick.qml

- The main QML file. Contains the UI of the application.

qml/BetaView.qml

- The beta view. Lists beta applications from Nokia Beta Labs.

qml/SearchView.qml

- The search view. Allows searching of beta applications.

qml/DetailsView.qml

- The details view. Displays the details of a beta application.

qml/DownloadInfoView.qml

- The download info view. Displays the download info of a beta application.

qml/ReviewView.qml

- The review view. Displays the reviews of a beta application.

qml/TabWidget.qml

- A modified version of Qt's Tab Widget example. See also:
  http://doc.qt.nokia.com/declarative-ui-components-tabwidget.html.

script/ajax.js

- Functions related to AJAX communication.

script/common.js

- Utility functions.

lib/components

- Qt Components. See also: http://qt.gitorious.org/qt-components.

gfx/

- The graphics directory. Contains graphics that are used.


KNOWN ISSUES
-------------------------------------------------------------------------------

- None.


DESIGN CONSIDERATIONS
-------------------------------------------------------------------------------

- The Exit/Back button's functionality changes dynamically depending on the
  view that is visible at the time. The button (or an image that acts as a
  button, to be precise) emits the buttonClicked signal when it is clicked. In
  addition, the button contains a property called backFunctionality, which
  stores information about what the button does when clicked. The buttonClicked
  signal is handled in every view that contains the Exit/Back button, and the
  value of the property is examined and acted upon.

- Information about whether a category checkbox is checked or not is carried
  along in each categoryItem delegate (the property cbChecked). This is done in
  order to refer to the property of the delegates in the toggleCheckBoxes
  function, for example.


INSTALLATION INSTRUCTIONS
-------------------------------------------------------------------------------

Mobile device (Symbian^3)
~~~~~~~~~~~~~~~~~~~~~~~~~

There are two ways to install the application on the device.

0. The Qt libraries (4.7.2 or higher) must be installed. See COMPATIBILITY for
   more information about the installation.

1. a) Drag the bin/betalabsclientqtquick_v1_0_s3.sis file to the Nokia Ovi
      Suite when the device is connected with the USB cable.
   
   OR
   
   b) Send the application directly to the Messaging Inbox (for example,
      through Bluetooth).

2. After the installation is complete, return to the Application menu and
   select the Applications folder.
   
3. Locate the BetaLabsClientQtQuick icon and select it to launch the
   application.


RUNNING THE APPLICATION
-------------------------------------------------------------------------------

Launch BetaLabsClientQtQuick on your device. A security warning prompts you to
allow the application to access the network. Once you have accepted network
access, the list of the latest applications is downloaded from the backend and
displayed in the Latest tab. To view the details of a single application, tap
on its name or picture.

From the details view you can download the application in question or view its
reviews. If downloading is not possible, the Download button is greyed out.

To go back to the previous view at any time, tap on the arrow in the upper
right-hand corner of the screen.

The Popular tab shows the list of the most popular applications in Nokia Beta
Labs, and the Search tab allows you to search for applications. When you click
on the Search tab, the list of available application categories is downloaded
from the backend. Check the categories that you want and tap on 'Search' next
to the Free text search field. You can also type a search phrase into the Free
text search field and tap on 'Search'.

Beta applications matching your search criteria are listed. Again, you can view
the details of a single application by tapping on its name or picture.

To exit the application, tap on the cross symbol in the upper right-hand corner
of the screen.


COMPATIBILITY
-------------------------------------------------------------------------------

Symbian^3 with Qt version 4.7.2 or higher.

  1. Download Qt for Symbian (4.7.2 or higher) from qt.nokia.com.
  
  2. Drag qt_installer.sis on top of the device in Nokia Ovi Suite while the 
     device is connected. The SIS package is found in the installation folder 
     of Qt for Symbian (4.7.2 or higher).

Tested on:

- Nokia N8
- Nokia E7
- Nokia C7-00

Developed with:

- Qt SDK 1.1 Beta


RELATED RESOURCES
-------------------------------------------------------------------------------

- Qt Components: http://qt.gitorious.org/qt-components
- Tab Widget example:
  http://doc.qt.nokia.com/declarative-ui-components-tabwidget.html